package com.fdd.op.sdk;

/**
 * fdd客户端
 *
 * @author Fadada
 * @date 2021/04/26
 */
public interface FddClient {

	/**
	 * 执行公开API请求。
	 * 
	 * @param <T> 具体的API响应类
	 * @param request 具体的API请求类
	 * @return 具体的API响应
	 */
	public <T extends FddResponse> T execute(FddRequest<T> request) throws ApiException;

	/**
	 * 执行隐私API请求。
	 * 
	 * @param <T> 具体的API响应类
	 * @param request 具体的API请求类
	 * @param session 用户授权码
	 * @return 具体的API响应
	 */
	public <T extends FddResponse> T execute(FddRequest<T> request, String session) throws ApiException;

}
